#include <iostream>
#include <fstream>
#include <cstdio>
#include <sstream>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <string>
#include <map>
#include <vector>
#include <set>
#include <queue>
#include <deque>
#include <ctime>
#include <cstdlib>

using namespace std;

#define sz(x) ((int)((x).size()))

typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> pii;

const double EPS = 1e-9;
const double PI = acos(-1.0);

const int MAXN = (int)(2e4) + 10;
const int INF = (int)(2e9) + 10;



int main() {
	//freopen(".in", "r", stdin);
	//freopen(".out", "w", stdout);

	int t; scanf("%d", &t);
	for(int i = 0; i < t; i++) {
		int m, n; scanf("%d%d", &m, &n);
		vector<pair<int, int> > vc;
		for(int i = 0; i < n; i++) {
			int l, r;
			scanf("%d%d", &l, &r);
			if(l < r) {
				vc.push_back(make_pair(l + 1, 1));
				vc.push_back(make_pair(r, -1));
			} else {
				vc.push_back(make_pair(0, 1));
				vc.push_back(make_pair(r, -1));
				vc.push_back(make_pair(l + 1, 1));
				vc.push_back(make_pair(m, -1));
			}
		}
		sort(vc.begin(), vc.end());
		bool ok = 1;
		int bal = 0;
		for(int i = 0; i < (int)vc.size();) {
			int pos = vc[i].first;
			while(pos == vc[i].first) {
				bal += vc[i++].second;
			}
			if(bal > 1) {
				ok = 0;
				break;
			}
		}
		if(ok) {
			cout << "YES\n";
		} else {
			cout << "NO\n";
		}
	}
	return 0;
}

